Parallel development of source code using multiple programming languages may occur within a programming environment. It may be advantageous to create communication channels and/or wrappers around programming systems and/or other arrangements that have their own metadata description formats. For example, a computer application developed in managed code (e.g., C# programming language) may attempt to open a web browser developed in a native code (e.g., programming language in XPCOM format). To facilitate communication between different programming languages, a wrapper may be generated. The wrapper may expose objects within a programming language (e.g., native code) to other programming languages (e.g., managed code), thus providing interoperability between the programming languages. However, wrappers produced by existing tools provide limited control, flexibility, and/or customization to developers.